Automation control systems are well-known. Such systems include building automation systems for controlling environmental systems, elevator banks, and the like. Other automation control systems include industrial control, food processing, and transportation systems. These systems receive data from sensors that are evaluated to determine control actions to take in order to bring about some condition or perform some operation. For example, an environmental control system uses sensors to detect environmental conditions and system parameters throughout a building or other space that is environmentally regulated to determine control actions for maintaining or bringing the regulated space to some defined condition.
Generally, a system used to control the environmental conditions within a building is configured as a distributed network. That is, a single network is created that includes a network manager that is operably connected to a number of local controllers distributed throughout the network. The network manager manages and coordinates the operation of the local controllers by issuing control parameters and receiving data indicating the operating condition of the local controllers. The local controllers receive sensor input and control parameters and control the operation of components to effect the specific task that they are programmed to control.
The various components need not be provided from a single manufacturer in order to be incorporated into a network. For example, interoperability of components from various manufactures may be provided by following “standard” communications protocols that have evolved and which are used by a number of different manufacturers. By using devices with the same protocol, a consumer can be assured that the devices will be able to communicate with the other devices of the consumer's system once installed. One such protocol is the LonTalk protocol, also known as the ANSI/EIA 709-1 Control Networking Standard.
The LonTalk protocol is a layered, packet based, peer-to-peer communications protocol designed specifically for control systems. By using devices with a shared protocol, a consumer ensures that a device, regardless of its manufacturer, will be able to send and receive messages from other devices in the network. To this end, the protocol ideally enables communication without prior detailed knowledge of the topology of the network. Accordingly, systems using the LonTalk protocol maintain control functions within the various devices while sharing data with other devices in the system. Such a system may be referred to as an information-based control system. Accordingly, a device may be used in a variety of different applications.
Similarly, local controllers are used in a variety of applications. For example, a building including a number of laboratories may have dedicated local controllers for each laboratory. One laboratory may be used for chemical mixing. In such a case, it may be desired to maintain the laboratory at a pressure lower than surrounding areas so that any noxious fumes are extracted through the ventilation system and not allowed to seep into the surrounding areas. In contrast, a laboratory functioning as a clean room may require positive pressure in comparison to the surrounding areas so that only filtered air is introduced into the laboratory. The building may include a conference area that only needs to be environmentally controlled within a narrow temperature band if it is occupied, an atrium that must be constantly maintained within a narrow temperature band, and offices that must be maintained within a narrow temperature band only during normal work hours with the ability to maintain the narrow temperature band at all other times if the office is occupied.
In all of the above applications, and others not mentioned, the specific local controller must be able to receive input from the network that may include set points, dead bands, etc., as well as input from a variety of sensors. The sensors are temperature sensors, infrared body detectors, position indicators, water flow meters, air flow meters, water pressure meters, air pressure meters, and the like. Position indicators are devices that generate a signal that corresponds to the position of a switch, valve, or vent opening so the system controller may determine whether particular lights, fans, vents, or blower motors are operating or open. The data that are generated by the sensors may be provided in digital or analog form. Moreover, the signal may merely indicate one of two conditions, such as a position of open or shut, or it may further indicate a condition between two extremes, such as the extent to which the valve is open.
A similar situation arises with the output that is used to control the various components. A controller may be used to control lights, motors, valve position, and motor operation. All of these components may use a variety of control signals.
Accordingly, it is known in the prior art to provide controllers that are configurable to accept a number of different inputs and outputs. Typically, a set of terminals are connected to a particular processing component within the controller. When installing a controller, an installer selects the appropriate terminal based upon the specific sensors and components, and connects the local controller. Thus, the local controller is configurable to accept a variety of inputs and to provide a variety of outputs.
The ability to configure the input and output terminals allows a single type of local controller to be used with a variety of sensors and components and greatly increases the flexibility of the local controller. However, such local controllers are not necessarily useful in all of the different applications in which local controllers are used. This is because the various applications in which a local controller is used require a controller with different data processing modules. One approach to providing different data processing modules is to provide a controller that is pre-programmed with data processing modules that are directed to a specific application. Thus, when installing a controller in a system, the field technician need only attach wires to the proper input/output terminal. Such pre-programmed controllers are easy to install. However, each application requires a different controller. Therefore, a large inventory of controllers must be maintained, or installation may be delayed until an appropriate controller is ordered and received. Moreover, if the use of a room is changed and requires different functionality, a new controller must be obtained.
Another approach is to use field programmable controllers. This type of controller addresses some of the shortcomings of the pre-programmed controllers as they may be used in a wide variety of applications. Once installed, the data processing modules of the controller are programmed for the particular application. Thus, a single controller may be used in a variety of applications. Moreover, if the use of an area changes and requires a different functionality, the controller need not be replaced. In addition to possibly altering inputs and outputs, the controller only needs to be reprogrammed to realize the different functionality. Of course, the need to program the controllers increases the complexity of the installation process.
What is needed is a controller that includes configurable data processing modules such that the controller could be used for a number of different applications. It would be beneficial if the controller did not require complete programming of data processing modules at the time of installation. It would be further beneficial if the controller included configurable input and output modules.